<%@ page language="java" contentType="text/html; charset=utf-8"
	pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/ xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<title>Struts2 OGNL 演示</title>
	</head>
	<body>
		<h3>
			访问OGNL上下文和Action上下文
		</h3>
		<!-- 使用OGNL访问属性值-->
		<p>
			request.msg:
			<s:property value="#request.msg" />
		</p>
		<p>
			session.msg:
			<s:property value="#session.msg" />
		</p>
		<p>
			application.msg:
			<s:property value="#application.msg" />
		</p>

		<p>
			attr.msg:
			<s:property value="#attr.msg" />
		</p>

		<hr />

		<h3>
			用于过滤和投影(projecting)集合
		</h3>

		<p>
			年龄大于20
		</p>

		<ul>

			<!-- 判断年龄-->

			<s:iterator value="persons.{?#this.age>20}">

				<li>
					<s:property value="name" />
					- 年龄：
					<s:property value="age" />
				</li>

			</s:iterator>

		</ul>

		<p>
			姓名为pla1的年龄:
			<s:property value="persons.{?#this.name=='pla1'}.{age}[0]" />
		</p>

		<hr />

		<h3>
			构造Map
		</h3>

		<s:set name="foobar" value="#{'foo1':'bar1', 'foo2':'bar2'}" />

		<p>
			The value of key "foo1" is
			<s:property value="#foobar['foo1']" />
		</p>

		<hr />

		<h4>
			%符号的用法
		</h4>

		<s:set name="foobar" value="#{'foo1':'bar1', 'foo2':'bar2'}" />

		<p>
			The value of key "foo1" is
			<s:property value="#foobar['foo1']" />
		</p>

		<p>
			不使用％：
			<s:url value="#foobar['foo1']" />
		</p>

		<p>
			使用％：
			<s:url value="%{#foobar['foo1']}" />
		</p>

		<hr />